
//创建和初始化地图函数：
function initMap(){
	createMap();//创建地图
	setMapEvent();//设置地图事件
	addMapControl();//向地图添加控件
	addMarker();//向地图中添加marker
}

//创建地图函数：
function createMap(){
	//       var map = new BMap.Map("dituContent");//在百度地图容器中创建一个地图
	// var point = new BMap.Point(112.98473,28.19754);//定义一个中心点坐标

	// map.centerAndZoom(point,18);//设定地图的中心点和坐标并将地图显示在地图容器中
	// window.map = map;//将map变量存储在全局

	// 百度地图API功能
	var map = new BMap.Map("dituContent");    // 创建Map实例
	map.centerAndZoom(new BMap.Point(112.98473,28.19754), 18);  // 初始化地图,设置中心点坐标和地图级别
	map.addControl(new BMap.MapTypeControl());   //添加地图类型控件
	// map.setMapType(BMAP_SATELLITE_MAP); //卫星地图
	map.setMapType(BMAP_HYBRID_MAP);//混合地图
	// map.setCurrentCity("湖南");          // 设置地图显示的城市 此项是必须设置的
	// map.enableScrollWheelZoom(true);     //开启鼠标滚轮缩放
	window.map = map
}

//地图事件设置函数：
function setMapEvent(){
	map.enableDragging();//启用地图拖拽事件，默认启用(可不写)
	map.enableScrollWheelZoom();//启用地图滚轮放大缩小
	map.enableDoubleClickZoom();//启用鼠标双击放大，默认启用(可不写)
	map.enableKeyboard();//启用键盘上下左右键移动地图
	// 禁用版权控件
	//     var opts = {anchor: BMAP_ANCHOR_BOTTOM_RIGHT, offset: new BMap.Size(10, 10)};
	//     map.addControl(new BMap.ScaleControl(opts));
	//     map.addControl(new BMap.NavigationControl(opts));
	//     map.addControl(new BMap.OverviewMapControl(opts));

	//     map.addEventListener('tilesloaded', function(){
	//       setTimeout(function(){
	//         document.getElementsByClassName('anchorBL')[0].style.display='none';
	//       }, 200);
	//     });
}

//地图控件添加函数：
function addMapControl(){
	//向地图中添加缩放控件
	var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
	map.addControl(ctrl_nav);
	//向地图中添加缩略图控件
	var ctrl_ove = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:0});
	map.addControl(ctrl_ove);
	//向地图中添加比例尺控件
	var ctrl_sca = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
	map.addControl(ctrl_sca);
}

//标注点数组
var markerArr = [{title:"鹏peng的位置",content:"<img src='assets/img/headSculpture.jpeg' width='100%' height='150'/><h6>湖南省长沙市芙蓉区五一广场</h6>",point:"112.98473|28.19754",isOpen:1,icon:{w:23,h:5,l:46,t:21,x:9,lb:12}}];

//创建marker
function addMarker(){
  for(var i=0;i<markerArr.length;i++){
	var json = markerArr[i];
	var p0 = json.point.split("|")[0];
	var p1 = json.point.split("|")[1];
	var point = new BMap.Point(p0,p1);
	var iconImg = createIcon(json.icon);
	var marker = new BMap.Marker(point,{icon:iconImg});
	var iw = createInfoWindow(i);
	var label = new BMap.Label(json.title,{"offset":new BMap.Size(json.icon.lb-json.icon.x+10,-20)});
	// 创建标注点实例并设置位置
	var marker = new BMap.Marker(point);
	map.addOverlay(marker);
	marker.setLabel(label);
	map.addOverlay(marker);
	label.setStyle({
			  borderColor:"#808080",
			  color:"#333",
			  cursor:"pointer",
	});
	
	(function(){
		var index = i;
		var _iw = createInfoWindow(i);
		var _marker = marker;
		_marker.addEventListener("click",function(){
			this.openInfoWindow(_iw);
		});
		_iw.addEventListener("open",function(){
			_marker.getLabel().hide();
		})
		_iw.addEventListener("close",function(){
			_marker.getLabel().show();
		})
		label.addEventListener("click",function(){
			_marker.openInfoWindow(_iw);
		})
		if(!!json.isOpen){
			label.hide();
			_marker.openInfoWindow(_iw);
		}
	})()
  }
}
//创建InfoWindow
function createInfoWindow(i){
  var json = markerArr[i];
  var iw = new BMap.InfoWindow("<b class='iw_poi_title' title='" + json.title + "'>" + json.title + "</b><div class='iw_poi_content'>"+json.content+"</div>");
  return iw;
}
//创建一个Icon
function createIcon(json){
  var icon = new BMap.Icon("https://app.baidu.com/map/images/us_mk_icon.png", new BMap.Size(json.w,json.h),{imageOffset: new BMap.Size(-json.l,-json.t),infoWindowOffset:new BMap.Size(json.lb+5,1),offset:new BMap.Size(json.x,json.h)})
  return icon;
}

//initMap();//创建和初始化地图